home *** CD-ROM | disk | FTP | other *** search
- package Common
- {
- import flash.geom.Point;
-
- public class FastMath
- {
-
- public static const PIOVER180:Number = 0.0174603;
-
- public static var sinTable:Array = new Array(360);
-
-
- public function FastMath()
- {
- super();
- }
-
- public static function variance(param1:Number, param2:Number, param3:Number = 1) : Number
- {
- return param1 - param2 * param3 + Math.random() * param2;
- }
-
- public static function degToRad(param1:Number) : Number
- {
- return param1 * PIOVER180;
- }
-
- public static function cos(param1:int) : Number
- {
- return sin(90 - param1);
- }
-
- public static function lerp(param1:Number, param2:Number, param3:Number) : *
- {
- return param1 + (param2 - param1) * param3;
- }
-
- public static function magDir(param1:Number, param2:int) : Point
- {
- return new Point(param1 * FastMath.sin(param2),param1 * FastMath.cos(param2));
- }
-
- public static function initTable() : *
- {
- var _loc1_:int = 0;
- _loc1_ = 360;
- while(--_loc1_ != -1)
- {
- sinTable[_loc1_] = Math.sin(degToRad(_loc1_));
- }
- }
-
- public static function sin(param1:int) : Number
- {
- if(param1 > 360)
- {
- param1 %= 360;
- }
- else if(param1 < 0)
- {
- param1 = 360 - Math.abs(param1 % 360);
- }
- return sinTable[param1];
- }
- }
- }
-